import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定，请勿修改，直接返回方法规定的值即可
     *
     * 
     * @param prices int整型一维数组 
     * @return int整型
     */
    public int maxProfit (int[] prices) {
        // write code here
        int len = prices.length;
        int[][] dp = new int[len][2];
        dp[0][0] = prices[0];//持股
        dp[0][1] = 0;//不持股
        for(int i = 1;i<len;i++) {
            dp[i][0] = Math.min(dp[i-1][0],prices[i]);
            dp[i][1] = Math.max(dp[i-1][1],prices[i] - dp[i][0]);
        }
        return dp[len-1][1];
    }
}